Workflow processes are used to streamline processes that involve both manual and automatic operations. For example, a workflow process can be defined for the provisioning of storage resources. The workflow process defines what storage resources can be requested, who can request storage resources, who can approve of the requests, who can configure requested storage resources, and so on. The workflow process also defines and manages the procedure by which requests are generated, approved, and satisfied so that requests are handled in an efficient and orderly manner. For example, the workflow process can prevent a request from being satisfied (e.g., by an administrator configuring and/or enabling the requested storage resources) before the request has been approved.
One problem that can arise in a workflow process occurs when a resource, which is required to satisfy an outstanding service request from one user, is allocated to another user while the first user's service request is still outstanding. For example, a user can request that a logical volume be implemented on a particular storage device in response to detecting that the particular storage device is not currently in use. The user can submit the request via email. Before an administrator reviews the email, the storage device may be allocated to a different user. As a result, by the time the administrator reviews the request, the storage device is no longer available for use by the user that submitted the request. Before being able to satisfy the request, the administrator will need to either select a different storage device for use by the user or instruct the user to select a different storage device. Accordingly, situations like this can lead to reduced efficiency and are likely to frustrate users and administrators.